// 导入数据库操作模块
const { User } = require('../db/index')

// 注册的路由函数
exports.regUser = (req, res) => {

    // 获取客户端提交到服务器的用户信息
    const userinfo = req.body

    // 用户名查重
    User.find({ username: userinfo.username }).then(results => {
        if (results.length > 0) {
            return res.cc('用户名被占用，请更换其他用户名')
        }

        // 插入新用户
        User.create({ username: userinfo.username, password: userinfo.password })
            .then(results => {
                // 注册用户成功
                return res.cc('注册成功', 0)
            })
            .catch(err => { return res.cc(err) })
    })
}

// 登录接口
exports.login = (req, res) => {
    // 接受表单数据
    const userinfo = req.body
    console.log(userinfo);
    User.find({ username: userinfo.username, password: userinfo.password }).then(results => {
        // 如果数据库中没有该用户，则不通过
        if (results.length !== 1) return res.cc('登陆shibai')

        // 调用res.send()将数据响应给客户端
        res.send({
            status: 0,
            message: '登陆成功',
        })
    })
}

// 查询用户
exports.userSearch = (req, res) => {
    const userinfo = req.body
    console.log(userinfo);
    User.find({ username: userinfo.name ,per:'1'}).then(results => {
        if (results.length !== 0) {
            res.send({
                status: 0,
                message: '欢迎登陆管理界面'
            })
        } else if (results.length == 0) {
            res.send({
                status: 1,
                message: '抱歉，此功能只向管理员开放'
            })
        }


    })
}

// 用户接口
exports.user = (req, res) => {
    // res.send('用户接口')
    User.find().then(results => {
        // console.log(results);
        res.send({
            status: 0,
            message: '获取用户成功',
            data: results
        })

    })
}

// 校验接口
exports.verify = (req, res) => {
    // 接受表单数据
    const userinfo = req.body
    console.log(userinfo);
    User.find({ username: userinfo.username }).then(results => {
        // console.log(results[0].password);
        if (userinfo.oldPassword !== results[0].password) {
            res.send({
                status: '1',
                message: '原密码不正确，请再次输入'
            })
        } else if (userinfo.newPassword == '') {
            res.send({
                status: '1',
                message: '新密码不可为空，请再次输入新密码'
            })
        } else if (userinfo.oldPassword == results[0].password && userinfo.newPassword !== '') {
            User.updateOne({ username: userinfo.username }, { password: userinfo.newPassword }).then(results => {
                console.log(results);
                res.send({
                    status: '0',
                    message: '密码修改成功，请重新登陆'
                })
            })

        }
    })
}